package com.dxy.yesas2020goals.study.partone.disignprinciple.dependenceinversionprinciple;

/**
 * @author victorydeng
 * @Classname StudentXiaoMing
 * @Description 小明这个学生类 我们的细节层（底层） 会有具体的实现方法
 * @Date 2020/2/24 22:35
 * @Created by victorydeng
 */
public class StudentXiaoMing {

  //底层的细节依赖于具体的实现 如果被高层应用调用时需要频繁的修改
  public void studyJava() {
    System.out.println("小明学习java课程");
  }

  public void studyPhp() {
    System.out.println("小明学习php课程");
  }

  public void studyPython() {
    System.out.println("小明学习Python课程");
  }

//  public void  study(Course course) {
//    course.study();
//  }

  //升级到构造器注入--start
//  private Course course;
//
//  public StudentXiaoMing(Course course) {
//    this.course = course;
//  }
//
//  public void  study() {
//    course.study();
//  }

  //升级到构造器注入--end

  //升级到set注入--start

  private Course course;

  public void setCourse(Course course) {
    this.course = course;
  }
  public void  study() {
    course.study();
  }
  //升级到set注入--start





}
